3 research outputs found

    Robotin ajurijärjestelmän modularisointi liitännäisarkkitehtuurilla

    Get PDF
    Factory lines are nowadays filled with intelligent systems that can perform various tasks without human interaction. To reach the current level of intelligence and automation, The significance of software in industrial robotics has increased dramatically. That creates new challenges in software design for such environments, which are then tackled with new software platforms and frameworks. This thesis takes an existing test automation platform and designs a new architecture based on plugins for it. The platform is used in functional testing of smartphones. The redesign aims to increase the modularity of the architecture, and thus allow for a more flexible deployment of the system in various hardware configurations. To verify the successfulness of the new architecture, a modularity analysis is performed for both the old and the new architectures. The analysis focuses on cohesion and coupling of the classes and modules in the systems. Both the old and the new platforms are implemented in Python, so the research process will evaluate the feasibility of manual modularity analysis for a dynamically typed programming language, as these kind of analyses are usually performed on a statically typed languages utilizing static analysis tools. The new architecture was shown to increase the cohesion, and decrease the coupling of the platform, which indicates an increase in the overall modularity of the platform. The analysis itself was found to be tedious, and the dynamic nature of Python increases the chance of errors in determining the coupling and cohesion of a component. A possibility of modifying a refactoring tool to aid in a such analysis was discussed.Tehdaslinjastot koostuvat nykyään älykkäistä järjestelmistä, jotka kykenevät toimimaan ilman ihmisen ohjausta. Merkittävä tekijä tämän muutoksen takana on ohjelmistojen kehittyminen, ja niiden merkityksen kasvu teollisuudessa. Tämä luo ohjelmistosuunnitteluun uusia haasteita, joita on ratkottu uusilla sovellusalustoilla ja -kehyksillä. Tässä tutkielmassa toteutetaan uusi ohjelmistoarkkitehtuuri testiautomaatiorobotille käyttäen liitännäisarkkitehtuuria. Tavoitteena on kasvattaa alustan modulaarisuutta, mikä mahdollistaa sen joustavan käytön erilaisissa järjestelmissä, jotka koostuvat erilaisista roboteista, antureista ja sensoreista. Uuden toteutuksen soveltuvuuden varmistamiseksi tässä tutkielmassa suoritetaan modulaarisuusanalyysi molemmille järjestelmille. Analyysissä perehdytään järjestelmien luokkien ja moduulien yhteenkuuluvuuteen (eng. cohesion) sekä riippuvuuksiin (eng. coupling). Järjestelmä toteutetaan Python-kielellä, joten tutkimuksessa selvitetään modulaarisuusanalyysin soveltuvuutta dynaamisesti tyypitetylle ohjelmointikielelle. Tutkimuksessa todettiin luokkien yhteenkuuluvuuden kasvaneen ja moduulien riippuvuuksien vähentyneen, mikä kertoo järjestelmän modulaarisuuden kasvusta. Analyysi itsessään todettiin työlääksi, ja sen huomattiin kasvattavan tulosten virhettä, koska moduulien väliset vuorovaikuttamiset eivät välttämättä olleet yksikäsitteisiä. Tutkimuksessa pohdittiin mahdollisuudesta muokata olemassa olevia refaktorointityökaluja siten, että niitä voisi hyödyntää tämänkaltaisen analyysin tekemisessä

    Robotin ajurijärjestelmän modularisointi liitännäisarkkitehtuurilla

    Get PDF
    Factory lines are nowadays filled with intelligent systems that can perform various tasks without human interaction. To reach the current level of intelligence and automation, The significance of software in industrial robotics has increased dramatically. That creates new challenges in software design for such environments, which are then tackled with new software platforms and frameworks. This thesis takes an existing test automation platform and designs a new architecture based on plugins for it. The platform is used in functional testing of smartphones. The redesign aims to increase the modularity of the architecture, and thus allow for a more flexible deployment of the system in various hardware configurations. To verify the successfulness of the new architecture, a modularity analysis is performed for both the old and the new architectures. The analysis focuses on cohesion and coupling of the classes and modules in the systems. Both the old and the new platforms are implemented in Python, so the research process will evaluate the feasibility of manual modularity analysis for a dynamically typed programming language, as these kind of analyses are usually performed on a statically typed languages utilizing static analysis tools. The new architecture was shown to increase the cohesion, and decrease the coupling of the platform, which indicates an increase in the overall modularity of the platform. The analysis itself was found to be tedious, and the dynamic nature of Python increases the chance of errors in determining the coupling and cohesion of a component. A possibility of modifying a refactoring tool to aid in a such analysis was discussed.Tehdaslinjastot koostuvat nykyään älykkäistä järjestelmistä, jotka kykenevät toimimaan ilman ihmisen ohjausta. Merkittävä tekijä tämän muutoksen takana on ohjelmistojen kehittyminen, ja niiden merkityksen kasvu teollisuudessa. Tämä luo ohjelmistosuunnitteluun uusia haasteita, joita on ratkottu uusilla sovellusalustoilla ja -kehyksillä. Tässä tutkielmassa toteutetaan uusi ohjelmistoarkkitehtuuri testiautomaatiorobotille käyttäen liitännäisarkkitehtuuria. Tavoitteena on kasvattaa alustan modulaarisuutta, mikä mahdollistaa sen joustavan käytön erilaisissa järjestelmissä, jotka koostuvat erilaisista roboteista, antureista ja sensoreista. Uuden toteutuksen soveltuvuuden varmistamiseksi tässä tutkielmassa suoritetaan modulaarisuusanalyysi molemmille järjestelmille. Analyysissä perehdytään järjestelmien luokkien ja moduulien yhteenkuuluvuuteen (eng. cohesion) sekä riippuvuuksiin (eng. coupling). Järjestelmä toteutetaan Python-kielellä, joten tutkimuksessa selvitetään modulaarisuusanalyysin soveltuvuutta dynaamisesti tyypitetylle ohjelmointikielelle. Tutkimuksessa todettiin luokkien yhteenkuuluvuuden kasvaneen ja moduulien riippuvuuksien vähentyneen, mikä kertoo järjestelmän modulaarisuuden kasvusta. Analyysi itsessään todettiin työlääksi, ja sen huomattiin kasvattavan tulosten virhettä, koska moduulien väliset vuorovaikuttamiset eivät välttämättä olleet yksikäsitteisiä. Tutkimuksessa pohdittiin mahdollisuudesta muokata olemassa olevia refaktorointityökaluja siten, että niitä voisi hyödyntää tämänkaltaisen analyysin tekemisessä

    Second asymptomatic carotid surgery trial (ACST-2) : a randomised comparison of carotid artery stenting versus carotid endarterectomy

    No full text
    Background: Among asymptomatic patients with severe carotid artery stenosis but no recent stroke or transient cerebral ischaemia, either carotid artery stenting (CAS) or carotid endarterectomy (CEA) can restore patency and reduce long-term stroke risks. However, from recent national registry data, each option causes about 1% procedural risk of disabling stroke or death. Comparison of their long-term protective effects requires large-scale randomised evidence. Methods: ACST-2 is an international multicentre randomised trial of CAS versus CEA among asymptomatic patients with severe stenosis thought to require intervention, interpreted with all other relevant trials. Patients were eligible if they had severe unilateral or bilateral carotid artery stenosis and both doctor and patient agreed that a carotid procedure should be undertaken, but they were substantially uncertain which one to choose. Patients were randomly allocated to CAS or CEA and followed up at 1 month and then annually, for a mean 5 years. Procedural events were those within 30 days of the intervention. Intention-to-treat analyses are provided. Analyses including procedural hazards use tabular methods. Analyses and meta-analyses of non-procedural strokes use Kaplan-Meier and log-rank methods. The trial is registered with the ISRCTN registry, ISRCTN21144362. Findings: Between Jan 15, 2008, and Dec 31, 2020, 3625 patients in 130 centres were randomly allocated, 1811 to CAS and 1814 to CEA, with good compliance, good medical therapy and a mean 5 years of follow-up. Overall, 1% had disabling stroke or death procedurally (15 allocated to CAS and 18 to CEA) and 2% had non-disabling procedural stroke (48 allocated to CAS and 29 to CEA). Kaplan-Meier estimates of 5-year non-procedural stroke were 2·5% in each group for fatal or disabling stroke, and 5·3% with CAS versus 4·5% with CEA for any stroke (rate ratio [RR] 1·16, 95% CI 0·86-1·57; p=0·33). Combining RRs for any non-procedural stroke in all CAS versus CEA trials, the RR was similar in symptomatic and asymptomatic patients (overall RR 1·11, 95% CI 0·91-1·32; p=0·21). Interpretation: Serious complications are similarly uncommon after competent CAS and CEA, and the long-term effects of these two carotid artery procedures on fatal or disabling stroke are comparable
    corecore